package com.ytf.test.sixth;

/**
 * @author: YTF
 * @date: 2024/9/23 12:00
 * @version: 1.0
 * @description: 范围
 */
public class Range {

    public static int[] range(int n){
        int[] result = new int[n];
        for (int i = 0; i <n ; i++) {
            result[i] = i;
        }
        return result;
    }
    public static int[] range(int start, int end){
        int sz = end-start;
        int[] result = new int[sz];
        for (int i = 0; i <sz ; i++) {
            result[i] = start+i;
        }
        return result;
    }

    /**
     *
     * @param start 序列的起始值（包含）
     * @param end 序列的结束值（不包含）
     * @param step 序列中相邻两个数之间的差值
     * @return 例如，range(1, 5, 2) 将生成一个从 1 开始，到 5 结束（不包括 5），步长为 2 的整数序列，即 [1, 3]。
     */
    public static int[] range(int start, int end, int step){
        int sz = (end-start)/step;
        int[] result = new int[sz];
        for (int i = 0; i <sz ; i++) {
            result[i] = start+(i*step);
        }
        return result;
    }
}
